home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 2 / Amiga Tools 2.iso / musik / delitracker_ii / install-dt_ii < prev    next >
Text File  |  1995-03-09  |  23KB  |  812 lines

  1. ;=============================================================================;
  2. ;
  3. ; $VER: DT_Install 2.07 (24.07.1994)
  4. ;
  5. ; Installation script for DeliTracker 2.07
  6. ; (c) Copyright 1994 by Frank Riffel and Peter Kunath
  7. ;
  8. ;=============================================================================;
  9. ;=============================================================================;
  10. ;=============================================================================;
  11. ;
  12. ; This is a quick description how this script works:
  13. ;
  14. ; 1.INIT_STUFF
  15. ;
  16. ; 2.CHECK_INSTALLED_VERSION:
  17. ;    NO_VERSION  => CHOOSE_DESTINATION
  18. ;               (suggestion Work: or SYS:)
  19. ;    OLD_VERSION => UNINSTALL_OLD
  20. ;    NEW_VERSION => EXIT
  21. ;
  22. ; 3.MAIN                             ~ 80K
  23. ;
  24. ; 4.PLAYERS (default players, ask further players to install)    ~350K
  25. ;     
  26. ; 5.GENIES (default genies, ask further genies to install)    ~150K
  27. ;
  28. ; 6.AREXX (ask user)                        ~ 15K
  29. ;
  30. ; 7.LIBS (ask user, suggested)                    ~ 40K
  31. ;
  32. ; 8.DOCS (depending on language)                ~110k
  33. ;
  34. ; 9.DEVELOPER_DOCS (ask only ADVANCED)                ~160K
  35. ;                                ======
  36. ;                            TOTAL    ~900K
  37. ;=============================================================================;
  38. ;=============================================================================;
  39. ;=============================================================================;
  40. ;
  41. ; Some initial stuff like kick version check, lanugage selection, ...
  42.  
  43. (if (= @LANGUAGE "english")
  44.  (
  45.   (set def_pat "#?.doc#?")
  46.  
  47.   (set #bad-kick
  48.   (cat "DeliTracker 2.0 will only run under Kickstart 2.04 or above!"
  49.   ))
  50.  
  51.   (set #abort-t
  52.   (cat "Make sure that T: is big enough to hold 500KB."
  53.   ))
  54.  
  55.   (set #abort-no-space
  56.   (cat "You need at least 850.000 Bytes of free store to install DeliTracker II"
  57.   ))
  58.  
  59.   (set #choose-text
  60.   (cat "Please choose a directory where DeliTracker should be installed! A drawer will be created there."
  61.   ))
  62.  
  63.   (set #choose-help
  64.   (cat "In this location a drawer will be created. All files exept the libraries will be installed inside this drawer. The complete installation will require about 1MB of free harddisk space."
  65.   ))
  66.  
  67.   (set #create-maindir
  68.   (cat "Creating DeliTracker directory"
  69.   ))
  70.  
  71.   (set #create-configdir
  72.   (cat "Creating Config directory"
  73.   ))
  74.  
  75.   (set #set-path
  76.   (cat "Setting up configuration path"
  77.   ))
  78.  
  79.   (set #inst-main
  80.   (cat "Installing main program."
  81.   ))
  82.  
  83.   (set #create-docsdir
  84.   (cat "Creating Docs dir"
  85.   ))
  86.  
  87.   (set #inst-docs
  88.   (cat "Installing program documentation"
  89.   ))
  90.  
  91.   (set #ask-xpk
  92.   (cat "Do you whish to install the decompression libraries?"
  93.   ))
  94.  
  95.   (set #xpk-help
  96.   (cat "It's suggested that you install the decompression libraries, even if you currently don't have packed modules!"
  97.   ))
  98.  
  99.   (set #create-comressorsdir
  100.   (cat "Creating Libs:Compressors dir"
  101.   ))
  102.  
  103.   (set #create-playerdir
  104.   (cat "Creating Player dir"
  105.   ))
  106.  
  107.   (set #create-playerstore
  108.   (cat "Creating PlayerStore"
  109.   ))
  110.  
  111.   (set #ask-players
  112.   (cat "Which Players should be activated?"
  113.   ))
  114.  
  115.   (set #ask-additional-players
  116.   (cat "Activate further players ? These players that are not widespread. The average user won' need them to be activated. We suggest that you select 'NO'!"
  117.   ))
  118.  
  119.   (set #ask-players-2
  120.   (cat "Which additional Players should be activated? Think twice before selecting!"
  121.   ))
  122.  
  123.   (set #player-help
  124.   (cat "Select those players you want to be loaded at startup. Please choose only those players you REALY need and you have modules for. All others will be installed in the PlayerStore directory so you may load them later."
  125.   ))
  126.  
  127.   (set #create-geniedir
  128.   (cat "Creating Genie dir"
  129.   ))
  130.  
  131.   (set #create-geniestore
  132.   (cat "Creating GenieStore"
  133.   ))
  134.  
  135.   (set #ask-genies
  136.   (cat "Which genies should be activated?"
  137.   ))
  138.  
  139.   (set #genie-help
  140.   (cat "All genies that are not activated will be installed in the GenieStore directory. For the further informations about particular genies read genie.doc."
  141.   ))
  142.  
  143.   (set #ask-arexx
  144.   (cat "Do you whish to install ARexx scripts?"
  145.   ))
  146.  
  147.   (set #help-arexx
  148.   (cat "Only choose if you realy use Rexx!"
  149.   ))
  150.  
  151.   (set #create-arexx
  152.   (cat "Creating Arexx dir"
  153.   ))
  154.  
  155.   (set #ask-pdocs
  156.   (cat "Do you whish to install Programming documentation?"
  157.   ))
  158.  
  159.   (set #help-pdocs
  160.   (cat "Only choose if you plan to write your own players or genies."
  161.   ))
  162.  
  163.   (set #create-pdocs
  164.   (cat "Creating Developer dir"
  165.   ))
  166.  
  167.   (set #extract-players
  168.   (cat "Extracting Players"
  169.   ))
  170.  
  171.   (set #extract-genies
  172.   (cat "Extracting Genies"
  173.   ))
  174.  
  175.   (set #extract-arexx
  176.   (cat "Extracting Arexx Scrips"
  177.   ))
  178.  
  179.   (set #extract-docs
  180.   (cat "Extracting Docs"
  181.   ))
  182.  
  183.   (set #extract-libs
  184.   (cat "Extracting Libs"
  185.   ))
  186.  
  187.   (set #extract-pdocs
  188.   (cat "Extracting development stuff"
  189.   ))
  190.    
  191.   (set #final-msg
  192.   (cat "To configure the genies repeat the following steps for each genie:\n\n1. Open the genie GUI with the 'Show' function.\n\n2. Activate the window and move it to the position where it should pop up.\n\n3. Set your defaults. You will find various options in the 'Settings' Menu. In particular: If you want the window to be opened every time DeliTracker is started turn 'Popup' on.\n\n4. Select 'Save Prefs' form the 'Project' Menu.\n"
  193.   ))
  194.  
  195.   ; Update Strings
  196.  
  197.   (set #remove-old
  198.   (cat "All old files will be removed."
  199.   ))
  200.  
  201.   (set #proceed
  202.   (cat "Proceed"
  203.   ))
  204.  
  205.   (set #abort
  206.   (cat "Abort"
  207.   ))
  208.  
  209.   (set #remove-old-help
  210.   (cat "If you like to keep your current installation you have to delete ENV:DELICONFIG and run this script again. Make sure that you select a different location for the new installation."
  211.   ))
  212.  
  213.   (set #removeing-dt
  214.   (cat "Removeing old files."
  215.   ))
  216.  
  217.   (set #allready-newer-installed
  218.   (cat "The installation was aborted beacuse this or a newer version is already installed."
  219.   ))
  220.  
  221.   (set #update-msg
  222.   (cat "DeliTracker is SHAREWARE. \nIt seems that you use DeliTracker frequently. If you have not registered yet, please register now."
  223.   ))
  224.  )
  225. )
  226.  
  227. ; german strings
  228.  
  229. (if (= @LANGUAGE "deutsch")
  230.  (
  231.   (set def_pat "#?.dok#?")
  232.  
  233.   (set #bad-kick
  234.   (cat "DeliTracker 2.0 benötigt mindenstens Kickstart 2.04!"
  235.   ))
  236.  
  237.   (set #abort-t
  238.   (cat "Das T: Verzeichnis muß mindestens 500KB Platz zum Entpacken verschiedener Dateien bieten."
  239.   ))
  240.  
  241.   (set #abort-no-space
  242.   (cat "Sie benötigen mindestens 850.000 Bytes freien Plattenplatz um DeliTracker zu installieren."
  243.   ))
  244.  
  245.   (set #choose-text
  246.   (cat "Bitte wählen Sie das Verzeichniss wohin DeliTracker installiert werden soll. Dieses Installationsscript legt dort selbst eine Schublade an."
  247.   ))
  248.  
  249.   (set #choose-help
  250.   (cat "Bei der Installation werden alle Dateien, bis auf die Libraries, in dieses Verzeichniss installiert. Die vollständige Installation von DeliTracker belegt auf der Festplatte etwa 1MB."
  251.   ))
  252.  
  253.   (set #create-maindir
  254.   (cat "Erstelle DeliTracker-Verzeichniss"
  255.   ))
  256.  
  257.   (set #create-configdir
  258.   (cat "Erstelle Konfigurations-Verzeichniss"
  259.   ))
  260.  
  261.   (set #set-path
  262.   (cat "Erstelle Pfad-Variable"
  263.   ))
  264.  
  265.   (set #inst-main
  266.   (cat "Installiere Hauptprogramm."
  267.   ))
  268.  
  269.   (set #create-docsdir
  270.   (cat "Erstelle Docs-Verzeichniss"
  271.   ))
  272.  
  273.   (set #inst-docs
  274.   (cat "Installiere Programm Dokumentation"
  275.   ))
  276.  
  277.   (set #ask-xpk
  278.   (cat "Wollen Sie die XPK Packer-Libraries installieren?"
  279.   ))
  280.  
  281.   (set #xpk-help
  282.   (cat "Sie sollenten die Packer-Libraries auch dann installieren, wenn Sie (noch) keine gepackten Module besitzen!"
  283.   ))
  284.  
  285.   (set #create-comressorsdir
  286.   (cat "Erstelle Libs:Compressors Unterverzeichniss"
  287.   ))
  288.  
  289.   (set #create-playerdir
  290.   (cat "Erstelle Player-Verzeichniss"
  291.   ))
  292.  
  293.   (set #create-playerstore
  294.   (cat "Erstelle PlayerStore"
  295.   ))
  296.  
  297.   (set #ask-players
  298.   (cat "Welche Player sollen aktiviert werden werden?"
  299.   ))
  300.  
  301.   (set #ask-additional-players
  302.   (cat "Sollen zusätzliche Player aktiviert werden? Hierbei handelt es sich um Player die nicht sehr Verbreitet sind. Der normale Benutzer wird diese Player nicht benötigen. Wir schlagen deshalb vor, das Sie mit 'NEIN' fortfahren."
  303.   ))   
  304.  
  305.   (set #ask-players-2
  306.   (cat "Welche zusätzlichen Player sollen bei Programmstart geladen werden?"
  307.   ))
  308.  
  309.   (set #player-help
  310.   (cat "Bitte wählen Sie nur Player für die Sie auch Module besitzen. Nicht angewählete Player werden im Playerstore installiert. Sie können diese Player bei Bedarf später immer noch nachladen."
  311.   ))
  312.  
  313.   (set #create-geniedir
  314.   (cat "Erstelle Genie Verzeichniss"
  315.   ))
  316.  
  317.   (set #create-geniestore
  318.   (cat "Erstelle GenieStore"
  319.   ))
  320.  
  321.   (set #ask-genies
  322.   (cat "Welche zusätzlichen Genies sollen bei Programmstart geladen werden?"
  323.   ))
  324.  
  325.   (set #genie-help
  326.   (cat "Alle Genies die nicht aktiviert werden sind im GenieStore zu finden. Weitere Informationen finden Sie in Genies.dok."
  327.   ))
  328.  
  329.   (set #ask-arexx
  330.   (cat "Wollen Sie die ARexx scripts installieren?"
  331.   ))
  332.  
  333.   (set #help-arexx
  334.   (cat "Wählen Sie diese Option nur wenn Sie Arexx auch benutzen."
  335.   ))
  336.  
  337.   (set #create-arexx
  338.   (cat "Erstelle Arexx-Verzeichniss"
  339.   ))
  340.  
  341.   (set #ask-pdocs
  342.   (cat "Wollen Sie die Programmierdokumentation installieren?"
  343.   ))
  344.  
  345.   (set #help-pdocs
  346.   (cat "Wählen Sie diese Option nur, wenn Sie eigene Player oder Genies schreiben wollen. Hinweis: Die Entwicklerdokumentation ist für Assemblerprogramierer gedacht und ist nur in Englisch verfügbar!"
  347.   ))
  348.  
  349.   (set #create-pdocs
  350.   (cat "Erstelle Developer-Verzeichniss"
  351.   ))
  352.  
  353.   (set #extract-players
  354.   (cat "Entpacke Player"
  355.   ))
  356.  
  357.   (set #extract-genies
  358.   (cat "Entpacke Genies"
  359.   ))
  360.  
  361.   (set #extract-arexx
  362.   (cat "Entpacke Arexx Scrips"
  363.   ))
  364.  
  365.   (set #extract-docs
  366.   (cat "Entpacke Dokumentation"
  367.   ))
  368.  
  369.   (set #extract-libs
  370.   (cat "Entpacke Libraries"
  371.   ))
  372.  
  373.   (set #extract-pdocs
  374.   (cat "Entpacke Entwicklungspaket"
  375.   ))
  376.  
  377.   (set #final-msg
  378.   (cat "Um die Genies zu konfigurieren, wiederholen Sie folgende Schritte für jedes Genie:\n\n1. Öffnen Sie die zugehörige GUI mit der 'Show' Funktion.\n2. Aktivieren Sie das Fenster und positionieren Sie es an der gewünschten Stelle.\n3. Stellen Sie die Optionen nach Bedarf ein. Sie finden die Einstellungen im 'Settings' Menü. Wenn Sie wünschen, daß dieses Fenster bei jedem Start von DeliTracker geöffnet wird, schalten Sie 'Popup' an.\n4. Wählen Sie den Menüpunkt 'Save Prefs' aus dem 'Project' Menü."
  379.   ))
  380.  
  381.   ; Update Strings
  382.  
  383.   (set #remove-old
  384.   (cat "Es werden jetzt alle alten Dateien gelöscht."
  385.   ))
  386.   
  387.   (set #proceed
  388.   (cat "Weiter"
  389.   ))
  390.  
  391.   (set #abort
  392.   (cat "Abbrechen"
  393.   ))
  394.  
  395.   (set #remove-old-help
  396.   (cat "Wenn Sie Ihre alte Installation behalten wollen müssen Sie ENV:DELICONFIG löschen und dieses Script erneut starten. Installieren Sie die neue Version unbedingt in einem anderen Directory."
  397.   ))
  398.  
  399.   (set #removeing-dt
  400.   (cat "Entferne alte Dateien."
  401.   ))
  402.  
  403.   (set #allready-newer-installed
  404.   (cat "Die Installation wurde abgebrochen, da bereits eine neuere Version installiert ist!"
  405.   ))
  406.  
  407.   (set #update-msg
  408.   (cat "\n\nDeliTracker ist SHAREWARE.\n\nDa Sie scheinbar DeliTracker öfter benutzen, sollten Sie sich, falls Sie das noch nicht getan haben, registrieren!"
  409.   ))
  410.  )
  411. )
  412.  
  413. ; check kick version
  414.  
  415. (if (< (/ (getversion) 65536) 37) (abort #bad-kick))
  416.  
  417. ; say hi 
  418. (welcome)
  419. (complete 0)
  420.  
  421. ;=============================================================================;
  422. ; Choose directory where DeliTracker is/will be installed.
  423. ; (Check for enough room)
  424. ;
  425. (if (exists "ENV:DELICONFIG" (noreq))
  426.  (
  427.   ; UPDATE
  428.  
  429.   (set @default-dest (getenv "DELICONFIG"))
  430.   (set @default-dest (substr @default-dest 0 (- (strlen @default-dest) 11)))
  431.   ; check installed version
  432.   (if (> 7 (BITAND 65535 (getversion (tackon @default-dest "DeliTracker2"))))
  433.    (    
  434.     (if (= 1 (askbool (prompt #remove-old) (help #remove-old-help) (choices #proceed #abort)))
  435.      (
  436.       (working #removeing-dt)
  437.       ; delete all files in the DeliTracker2 drawer
  438.  
  439.       (foreach (tackon @default-dest "DeliConfig") "#?" (delete (tackon (tackon @default-dest "DeliConfig") @each-name))) 
  440.       (foreach (tackon @default-dest "DeliPlayers/PlayerStore") "#?" (delete (tackon (tackon @default-dest "DeliPlayers/PlayerStore") @each-name)))
  441.       (foreach (tackon @default-dest "DeliPlayers") "#?" (delete (tackon (tackon @default-dest "DeliPlayers") @each-name)))
  442.       (foreach (tackon @default-dest "DeliGenies/GenieStore") "#?" (delete (tackon (tackon @default-dest "DeliGenies/GenieStore") @each-name)))
  443.       (foreach (tackon @default-dest "DeliGenies") "#?" (delete (tackon (tackon @default-dest "DeliGenies") @each-name)))
  444.       (foreach (tackon @default-dest "Docs") "#?" (delete (tackon (tackon @default-dest "Docs") @each-name)))
  445.       (if (= 2 (exists (tackon @default-dest "Arexx")))
  446.        (foreach (tackon @default-dest "ARexx") "#?" (delete (tackon (tackon @default-dest "ARexx") @each-name)))
  447.        (delete (tackon @default-dest "ARexx"))
  448.       )
  449.       (if (= 2 (exists (tackon @default-dest "Developer")))
  450.        (
  451.         (foreach (tackon @default-dest "Developer/Include/Misc") "#?" (delete (tackon (tackon @default-dest "Developer/Include/Misc") @each-name)))
  452.         (foreach (tackon @default-dest "Developer/Include") "#?" (delete (tackon (tackon @default-dest "Developer/Include") @each-name)))
  453.         (foreach (tackon @default-dest "Developer/Examples/Custom") "#?" (delete (tackon (tackon @default-dest "Developer/Examples/Custom") @each-name)))
  454.         (foreach (tackon @default-dest "Developer/Examples") "#?" (delete (tackon (tackon @default-dest "Developer/Examples") @each-name)))
  455.         (foreach (tackon @default-dest "Developer") "#?" (delete (tackon (tackon @default-dest "Developer") @each-name)))
  456.         (delete (tackon @default-dest "Developer"))
  457.        )
  458.       )
  459.  
  460.       ; for those who have moved DeliTracker into the WBStartUp drawer
  461.       (delete "SYS:WBStartUp/DeliTracker2")
  462.       (delete "SYS:WBStartUp/DeliTracker2.info")
  463.       ; remind shareware
  464.       (message #update-msg)
  465.      )
  466.      (exit "Bye Bye ...")
  467.     )
  468.    )
  469.    (abort #allready-newer-installed)
  470.   )
  471.  )
  472.  
  473.  ; CHOOSE_DESTINATION
  474.  
  475.  (
  476.   (if (= "RAM" (getdevice "T:"))
  477.    (set freespace (+ (database "total-mem")))
  478.    (set freespace (getdiskspace ("%s:" (getdevice "T:"))))
  479.   )
  480.   (if (< freespace 500000)
  481.     (abort #abort-t))
  482.   
  483.   (set @default-dest (getassign "Work" "dva"))
  484.   (if (= @default-dest "")
  485.    (set @default-dest "SYS:"))
  486.   
  487.   (set @default-dest (askdir
  488.     (prompt #choose-text)
  489.     (help #choose-help)
  490.     (default @default-dest))
  491.   ) 
  492.   
  493.   (set @default-dest (tackon @default-dest "DeliTracker_II"))
  494.   
  495.   (if (NOT (= "RAM" (getdevice @default-dest)))
  496.    (if (> 850000 (getdiskspace ("%s:" (getdevice @default-dest))))
  497.     (abort #abort-no-space)
  498.    )
  499.   )
  500.  )
  501. )
  502.  
  503. (complete 5)
  504.  
  505. ;=============================================================================;
  506. ; Install procedure for DeliTracker itself
  507.  
  508. (copyfiles (source "c/LhX") (dest "T:"))
  509.  
  510. (makedir @default-dest (prompt #create-maindir)(infos))
  511. (makedir (tackon @default-dest "DeliConfig") (prompt #create-configdir))
  512. (copyfiles (prompt #inst-main)
  513.  (source "DeliTracker2")
  514.  (dest @default-dest)
  515.  (optional "fail")
  516.  (infos)
  517. )
  518.  
  519. (complete 10)
  520.  
  521. ;=============================================================================;
  522. ; Installation procedure for players
  523.  
  524. (makedir (tackon @default-dest "DeliPlayers")
  525.  (prompt #create-playerdir)
  526.  (infos)
  527. )
  528.  
  529. (makedir (tackon @default-dest "DeliPlayers/PlayerStore")
  530.  (prompt #create-playerstore)
  531.  (infos)
  532. )
  533.  
  534. (working #extract-players)
  535. (run "T:LhX -x x Files/players.lha T:")
  536.  
  537. (
  538.  (copyfiles (prompt #ask-players)
  539.   (help #player-help)
  540.   (source "T:DeliPlayers/")
  541.   (dest (tackon @default-dest "DeliPlayers"))
  542.   (optional "nofail")
  543.   (confirm "average")
  544.   (files)
  545.   (all)
  546.  )
  547. )
  548.  
  549. (if (= 1 (askbool (prompt #ask-additional-players) (help @help-askbool)))
  550.  (    
  551.   (
  552.    (copyfiles (prompt #ask-players-2)
  553.    (help #player-help)
  554.    (source "T:DeliPlayers/Playerstore")
  555.    (dest (tackon @default-dest "DeliPlayers"))
  556.    (optional "nofail")
  557.    (confirm "average")
  558.    (files)
  559.    (all)
  560.    )
  561.   )
  562.  )
  563. )
  564.  
  565. (foreach (tackon @default-dest "DeliPlayers") "#?" (delete (tackon "T:DeliPlayers/" (fileonly @each-name))))
  566. (foreach (tackon @default-dest "DeliPlayers") "#?" (delete (tackon "T:DeliPlayers/PlayerStore/" (fileonly @each-name))))
  567. (copyfiles (source "T:DeliPlayers/Playerstore")
  568.        (dest (tackon @default-dest "DeliPlayers/PlayerStore"))
  569.        (files)
  570.        (all)
  571. )
  572. (foreach "T:DeliPlayers/Playerstore" "#?" (delete (tackon "T:DeliPlayers/PlayerStore/" (fileonly @each-name))))
  573. (delete "T:DeliPlayers/Playerstore")
  574. (copyfiles (source "T:DeliPlayers") 
  575.        (dest (tackon @default-dest "DeliPlayers/PlayerStore"))
  576.        (files)
  577.        (all)
  578. )
  579. (foreach "T:DeliPlayers" "#?" (delete (tackon "T:DeliPlayers/" (fileonly @each-name))))
  580. (delete "T:DeliPlayers")
  581.  
  582. (complete 65)
  583.  
  584. ;=============================================================================;
  585. ; Installation procedure for genies
  586. ; Install default genies
  587. ; Average, Expert: ask optional genies
  588.  
  589. (makedir (tackon @default-dest "DeliGenies")
  590.  (prompt #create-geniedir)
  591.  (infos)
  592. )
  593.  
  594. (makedir (tackon @default-dest "DeliGenies/GenieStore")
  595.  (prompt #create-geniestore)
  596.  (infos)
  597. )
  598.  
  599. (working #extract-genies)
  600. (run ("T:LhX -x x Files/genies.lha \"%s/\"" @default-dest))
  601.  
  602. ; remove NotePlayers on 68000er Systems that require at least a '020
  603. (if (OR (= "68000" (database "cpu") (= "68010" (database "cpu"))))
  604.  (
  605.   (delete (tackon @default-dest "DeliGenies/GenieStore/14Bit-NotePlayer"))
  606.   (delete (tackon @default-dest "DeliGenies/GenieStore/ModSave-NotePlayer"))
  607.   (delete (tackon @default-dest "DeliGenies/32Voc-NotePlayerPlus"))
  608.  )
  609. )
  610.  
  611. (
  612.  (copyfiles (prompt #ask-genies)
  613.   (help #genie-help)
  614.   (source (tackon @default-dest "DeliGenies/Geniestore"))
  615.   (dest (tackon @default-dest "DeliGenies"))
  616.   (optional "nofail")
  617.   (confirm "average")
  618.   (files)
  619.   (all)
  620.  )
  621. )
  622.  
  623. (foreach (tackon @default-dest "DeliGenies") "#?" (delete (tackon (tackon @default-dest "DeliGenies/GenieStore/") (fileonly @each-name))))
  624.  
  625. (complete 75)
  626.  
  627. ;=============================================================================
  628. ; Installation procedure for Arexx Scripts
  629.  
  630. (if (< 0 @user-level)
  631.  (if (= 1 (askbool (prompt #ask-arexx) (help #help-arexx)))
  632.   (
  633.    (makedir (tackon @default-dest "Arexx")
  634.     (prompt #create-arexx)
  635.     (infos)
  636.    )
  637.    (working #extract-arexx)
  638.    (run ("T:LhX -x x Files/arexx.lha \"%s/\"" @default-dest))
  639.   )
  640.  )
  641. )
  642.  
  643. (complete 80)
  644.  
  645. ;=============================================================================;
  646. ; Install procedure for the decompression libraries
  647.  
  648. (if (OR (= 0 @user-level) (if (< 0 @user-level) (askbool (prompt #ask-xpk) (help #xpk-help))))
  649.  (
  650.   (makedir "Libs:Compressors" (prompt #create-comressorsdir))
  651.   (working #extract-libs)
  652.   (run "T:LhX -x x Files/libs.lha >NIL: <NIL: T:")  
  653.   (run "T:LhX x Files/xpkSMPL.lha xpkSMPL.library >NIL: <NIL: T:libs/compressors/")
  654.   (run "T:LhX x Files/xpkSHRI.lha xpkSHRI.library >NIL: <NIL: T:libs/compressors/")
  655.   (run "T:LhX x Files/xpkSQSH.lha >NIL: <NIL: T:libs/")
  656.  
  657.   (copylib (prompt "Install xpkmaster.library")
  658.   (source "t:libs/xpkmaster.library")
  659.   (dest "libs:")
  660.   (confirm)
  661.   (optional nofail askuser)
  662.   (help @copylib-help)
  663.   )
  664.  
  665.   (copylib (prompt "Install powerpacker.library")
  666.   (source "T:libs/powerpacker.library")
  667.   (dest "libs:")
  668.   (confirm)
  669.   (optional nofail askuser)
  670.   (help @copylib-help)
  671.   )
  672.  
  673.   ; xpk sub lib's
  674.   
  675.   (copylib (prompt "Install compressors/xpkNUKE.library")
  676.   (source "T:libs/compressors/xpkNUKE.library")
  677.   (dest "libs:compressors/")
  678.   (confirm)
  679.   (optional nofail askuser)
  680.   (help @copylib-help)
  681.   )
  682.  
  683.   (copylib (prompt "Install compressors/xpkSMPL.library")
  684.   (source "T:libs/compressors/xpkSMPL.library")
  685.   (dest "libs:compressors/")
  686.   (confirm)
  687.   (optional nofail askuser)
  688.   (help @copylib-help)
  689.   )
  690.  
  691.   (copylib (prompt "Install compressors/xpkSHRI.library")
  692.   (source "T:libs/compressors/xpkSHRI.library")
  693.   (dest "libs:compressors/")
  694.   (confirm)
  695.   (optional nofail askuser)
  696.   (help @copylib-help)
  697.   )
  698.  
  699.   ; install right version for 680x0 cpu
  700.   (if (OR (= "68000" (database "cpu") (= "68010" (database "cpu"))))
  701.    (copylib (prompt "Install compressors/xpkSQSH.library")
  702.     (source "T:libs/68000/xpkSQSH.library")
  703.     (dest "libs:compressors/")
  704.     (confirm)
  705.     (optional nofail askuser)
  706.     (help @copylib-help)
  707.    )
  708.    (copylib (prompt "Install compressors/xpkSQSH.library")
  709.     (source "T:libs/68020/xpkSQSH.library")
  710.     (dest "libs:compressors/")
  711.     (confirm)
  712.     (optional nofail askuser)
  713.     (help @copylib-help)
  714.    )
  715.   )
  716.  
  717.   ; cleanup temp dir
  718.  
  719.   (foreach "t:libs/compressors" "#?" (delete (tackon "t:libs/compressors/" @each-name) (optional force)))
  720.   (foreach "t:libs/" "#?" (delete (tackon "t:libs/" @each-name) (optional force)))
  721.   (delete "t:libs/68000/xpkSQSH.library")
  722.   (delete "t:libs/68020/xpkSQSH.library")
  723.   (delete "t:libs/68000")
  724.   (delete "t:libs/68020")
  725.   (delete "t:libs")
  726.  
  727.  )
  728. )
  729.  
  730. (complete 90)
  731.  
  732. ;=============================================================================;
  733. ; Install procedure for the documentation files
  734.  
  735. (makedir (tackon @default-dest "Docs")
  736.  (prompt #create-docsdir)
  737.  (infos)
  738. )
  739.  
  740. (working #extract-docs)
  741. (run "T:LhX -x x Files/docs.lha >NIL: <NIL: -x t:")
  742.  
  743. (copyfiles (prompt #inst-docs)
  744.  (source "T:Docs/")
  745.  (dest (tackon @default-dest "Docs"))
  746.  (pattern def_pat)
  747.  (optional "nofail")
  748.  (infos)
  749.  (files)
  750. )
  751.  
  752. ; cleanup temp dir
  753.  
  754. (foreach "t:Docs/" "#?" (delete (tackon "t:Docs/" @each-name) (optional force)))
  755. (delete "t:Docs" (optional force))
  756.  
  757. (complete 95)
  758.  
  759. ;=============================================================================;
  760. ; Installation procedure for Development Documentation
  761.  
  762. (if (= 2 @user-level)
  763.  (if (= 1 (askbool (prompt #ask-pdocs) (help #help-pdocs)))
  764.   (
  765.    (makedir (tackon @default-dest "Developer")
  766.     (prompt #create-pdocs)
  767.     (infos)
  768.    )
  769.    (makedir (tackon @default-dest "Developer/Examples")
  770.     (prompt #create-pdocs)
  771.     (infos)
  772.    )
  773.    (makedir (tackon @default-dest "Developer/Includes")
  774.     (prompt #create-pdocs)
  775.     (infos)
  776.    )
  777.  
  778.    (working #extract-pdocs)
  779.    (run ("T:LhX -x x Files/developer.lha \"%s/\"" @default-dest))
  780.  
  781.    (if (= @language "english")
  782.     (
  783.     (delete (tackon @default-dest "Developer/Developer.dok"))
  784.     (delete (tackon @default-dest "Developer/Developer.dok.info"))
  785.     )
  786.     (
  787.     (delete (tackon @default-dest "Developer/Developer.doc"))
  788.     (delete (tackon @default-dest "Developer/Developer.doc.info"))
  789.     )
  790.    )   
  791.   )
  792.  )
  793. )
  794.  
  795. ;=============================================================================;
  796. ; Set environment variables for configuration path
  797.  
  798. (complete 98)
  799.  
  800. (textfile (prompt #set-path) (dest "ENV:DeliConfig") (append (expandpath (tackon @default-dest "DeliConfig")))) 
  801. (textfile (prompt #set-path) (dest "ENVARC:DeliConfig") (append (expandpath (tackon @default-dest "DeliConfig")))) 
  802.  
  803. ;=============================================================================;
  804. ; Cleanup & tell some important things!
  805.  
  806. (delete "T:LhX")
  807. (complete 99)
  808. (message #final-msg)
  809. (complete 100)
  810. ;=============================================================================;
  811.